//导入 jwt 
const jwt = require('jsonwebtoken');
//导入秘钥
const { SECRET, EXPIRE_TIME } = require("../config");
//声明函数 用来生成 token
function createToken(data) {
  return jwt.sign(data, SECRET, {
    expiresIn: EXPIRE_TIME, // 单位是秒
  });
}

//检验 token
function verifyToken(token) {
  return new Promise((resolve, reject) => {
    jwt.verify(token, SECRET, (err, data) => {
      //失败
      if (err) {
        reject(err);
      }else{
        resolve(data);
      }
    });
  });
}

//暴露函数
module.exports = {
  createToken,
  verifyToken
}

//测试两个函数
// let token = createToken({a: 100, b: 200});

// verifyToken(token).then(data => {
//   console.log(data);
// })


